/*
 * To change this template, choose Tools | Templates
 * and open the template in the editopu.
 */
package sv.com.intesal.seguridad.sql;

/**
 *
 * @author ejerez
 */
public class SQLPerfilUsuario {

    public static final String updatePerfil_Usuario = "UPDATE PERFIL_USUARIO SET agregar_pu=?,modificar_pu=?,buscar_pu=?,eliminar_pu=?,visible_pu=?,reporte_pu=? where codigo_pu=?";
    public static final String insertPerfil_Usuario = "INSERT INTO PERFIL_USUARIO(codigo_f,codigo_p,agregar_pu,modificar_pu,buscar_pu,eliminar_pu,visible_pu,reporte_pu)VALUES(?,?,?,?,?,?,?,?)";
    public static final String getCountUsuario_x_Formulario_Usuario = "SELECT count(codigo_pu) as count FROM PERFIL_USUARIO Where codigo_pu=? and codigo_f=? ";
    public static final String updatePerfil_Usuario_Perfil = "update PERFIL_USUARIO set agregar_pu=?,modificar_pu=?,buscar_pu=?,eliminar_pu=?,visible_pu=?,reporte_pu=? where codigo_p in (select codigo_p from PERFIL where codigo_p=?) and codigo_f in (select f.codigo_f from formulario as f,modulo as m where m.codigo_m=f.codigo_m and m.codigo_m=?) ";

    /*PERMISOS ESPECIALES*/
    public static final String updatePerfil_Usuario_Perfil_All = "update PERFIL_USUARIO set agregar_pu=?,modificar_pu=?,buscar_pu=?,eliminar_pu=?,visible_pu=?,reporte_pu=? where codigo_p in (select codigo_p from PERFIL) and codigo_f in (select f.codigo_f from formulario as f,modulo as m where m.codigo_m=f.codigo_m and m.codigo_m=? )";
    public static final String updatePerfil_Usuario_Formulario_All = "update PERFIL_USUARIO set agregar_pu=?,modificar_pu=?,buscar_pu=?,eliminar_pu=?,visible_pu=?,reporte_pu=? where codigo_pu in (select codigo_pu from PERFIL as p,PERFIL_USUARIO as pu where p.codigo_p=pu.codigo_p and p.codigo_p=?)";
    public static final String updatePerfil_Usuario_Formulario_x_Perfil_All = "update PERFIL_USUARIO set agregar_pu=?,modificar_pu=?,buscar_pu=?,eliminar_pu=?,visible_pu=?,reporte_pu=? where codigo_pu in (select codigo_pu from PERFIL as p,PERFIL_USUARIO as pu where p.codigo_p=pu.codigo_p )";

    /*********************/
    public static final String getCountPerfil_x_Formulario = "SELECT count(codigo_pu) as count FROM PERFIL_USUARIO Where codigo_p=? and codigo_f=?";
    public static final String getPerfil_Usuario = "SELECT m.codigo_m,f.codigo_f, m.nombre_m,pu.codigo_pu,f.nombre_f,f.nombre_form_f,pu.agregar_pu, pu.modificar_pu,pu.buscar_pu,pu.eliminar_pu,pu.visible_pu,pu.reporte_pu, p.codigo_p,p.nombre_p,p.estado_p FROM PERFIL_USUARIO as pu,FORMULARIO as f,MODULO as m,PERFIL as p where m.codigo_m=f.codigo_m and f.codigo_f=pu.codigo_f and p.codigo_p=pu.codigo_p and p.codigo_p=? order by m.nombre_m,f.nombre_f";
    public static final String insert_Perfil_Formulario_PerfilUsuario = ""
            + " insert into perfil_usuario (codigo_f,codigo_p,agregar_pu,modificar_pu,eliminar_pu,buscar_pu,visible_pu,reporte_pu) "
            + " select f.codigo_f,p.codigo_p,'NO','NO','NO','NO','NO','NO' from formulario as f,perfil as p where f.codigo_f not in "
            + " ( select pu.codigo_f from perfil_usuario as pu where pu.codigo_f=f.codigo_f and pu.codigo_p=p.codigo_p)";
}